package com.ruoyi.chat.mapper;

import java.util.List;
import com.ruoyi.chat.domain.Blacklist;
import com.ruoyi.jwyz.dto.TargetUserResult;

/**
 * 黑名单Mapper接口
 * 
 * @author lxp
 * @date 2023-03-31
 */
public interface BlacklistMapper 
{
    /**
     * 查询黑名单
     * 
     * @param id 黑名单主键
     * @return 黑名单
     */
    public Blacklist selectBlacklistById(Long id);

    /**
     * 查询黑名单列表
     * 
     * @param blacklist 黑名单
     * @return 黑名单集合
     */
    public List<Blacklist> selectBlacklistList(Blacklist blacklist);

    /**
     * 新增黑名单
     * 
     * @param blacklist 黑名单
     * @return 结果
     */
    public int insertBlacklist(Blacklist blacklist);

    /**
     * 修改黑名单
     * 
     * @param blacklist 黑名单
     * @return 结果
     */
    public int updateBlacklist(Blacklist blacklist);

    /**
     * 删除黑名单
     * 
     * @param id 黑名单主键
     * @return 结果
     */
    public int deleteBlacklistById(Long id);

    /**
     * 批量删除黑名单
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteBlacklistByIds(Long[] ids);

    /**
     * 根据用户 ID 查询黑名单列表
     *
     * @param uId 用户 ID
     * @return List<Long> 黑名单列表
     */
    public List<TargetUserResult> selectTargetUserByUserId(Long uId);

    public int deleteBlacklistArgentUserId(long uid,long targetId);

    public List<TargetUserResult> selectUserInfoListByIds(Long userId);

}
